//=======================================================================
//功能: 			JavaScript main
//author:		岳静
//e-mail: 		yuejing0129@126.com
//QQ:			503490146
//date: 		2012-08-30
//version: 		1.0
//=======================================================================
$(document).ready(function(){
    //绑定单向关注事件
	$("#menu_weibo_0").click(function(){
		//执行搜索
		onewayAttention(1);
		//显示操作菜单
		refreshMain(0);
	});
	//绑定单向关注全选事件
	$("#onewayAttentionSelectAllInfo").click(function() {
		selectAll("onewayAttentionSelectAllInfo");
	});
	//绑定取消单向关注事件
	$("#cancelOnewayAttention").click(function() {
		cancelAttention("onewayAttention", "attention", "onewayAttention");
	});

    //绑定单向粉丝事件
	$("#menu_weibo_1").click(function(){
		//执行搜索
		onewayFans(1);
		//显示操作菜单
		refreshMain(1);
	});
	//绑定单向粉丝全选事件
	$("#onewayFansSelectAllInfo").click(function() {
		selectAll("onewayFansSelectAllInfo");
	});
	//绑定关注单向粉丝事件
	$("#attentionOnewayFans").click(function() {
		attentionFans("onewayFans", "fans", "onewayFans");
	});

    //绑定互粉粉丝事件
	$("#menu_weibo_2").click(function(){
		//执行搜索
		mutualPowderFans(1);
		//显示操作菜单
		refreshMain(2);
	});
	//绑定互粉粉丝全选事件
	$("#mutualPowderFansSelectAllInfo").click(function() {
		selectAll("mutualPowderFansSelectAllInfo");
	});
	//绑定取消关注互粉粉丝事件
	$("#cancelMutualPowderFans").click(function() {
		cancelAttention("mutualPowderFans", "fans", "mutualPowderFans");
	});

	//绑定我的关注事件
	$("#menu_weibo_3").click(function() {
		myAttention(1);
		//显示操作菜单
		refreshMain(3);
	});
	//绑定我的关注全选事件
	$("#myAttentionSelectAllInfo").click(function() {
		selectAll("myAttentionSelectAllInfo");
	});
	//绑定取消我的关注事件
	$("#cancelMyAttention").click(function() {
		cancelAttention("myAttention", "attention", "myAttention");
	});

    //绑定我的粉丝事件
	$("#menu_weibo_4").click(function(){
		//执行搜索
		myFans(1);
		//显示操作菜单
		refreshMain(4);
	});
	//绑定我的粉丝全选事件
	$("#myFansSelectAllInfo").click(function() {
		selectAll("myFansSelectAllInfo");
	});
	//绑定关注我的粉丝事件
	$("#attentionMyFans").click(function() {
		attentionFans("myFans", "fans", "myFans");
	});
	//绑定取消关注事件
	$("#cancelMyFans").click(function() {
		cancelAttention("myFans", "fans", "myFans");
	});

	//加载单向关注信息
	//$("#menu_weibo_0").click();

	/**
	 * 关注粉丝
	 * @param _fansType : 刷新数据的类型
	 * @param _type		: 类型
	 * @param _opterType: 操作类型
	 */
	function attentionFans(_fansType, _type, _opterType) {
		var weiboChk = $('input:checkbox[class=weiboChk]:checked');
		if(weiboChk.size() === 0) {
			alert("请您至少选择一个用户!");
			return;
		}

		var uids = "";
		$.each(weiboChk, function(i, obj) {
			uids += $(obj).val() + ",";
		});
		jQuery.ajax({
			url : webroot + "/fans/json/attentionFans.shtml",
				data : {
				"uids" : uids,
				"type" : _type,
				"opterType" : _opterType
			},
			type : "POST",
			dataType : "json",
			async : true,
			beforeSend: function(){
				//提交处理的函数
				loading("关注中...");
			},
			error : function(json){
				alert("关注出错了~");
				unloading();
			},
			//返回的是一个对象
			success : function(json){
				alert(json.weiboMsg);
				//重新加载信息
				switch (_fansType) {
				case "onewayFans":
					//单向粉丝
					onewayFans(1);
					break;
				case "myFans":
					//我的粉丝
					myFans(1);
					break;
				}

				if(json.result === "error_weibo") {
					alert(json.errorWeiboMsg);
				}
				else if(json.result === "error") {
					alert("请求操作, 系统出现异常!");
				}
				unloading();
			}
		});
	}

	/**
	 * 取消关注
	 * @param _attentionType : 刷新数据的类型
	 * @param _type			 : 类型
	 * @param _opterType: 操作类型
	 */
	function cancelAttention(_attentionType, _type, _opterType) {
		var weiboChk = $('input:checkbox[class=weiboChk]:checked');
		if(weiboChk.size() === 0) {
			alert("请您至少选择一个用户!");
			return;
		}

		var uids = "";
		$.each(weiboChk, function(i, obj) {
			uids += $(obj).val() + ",";
		});
		jQuery.ajax({
			url : webroot + "/attention/json/cancelAttention.shtml",
				data : {
				"uids" : uids,
				"type" : _type,
				"opterType" : _opterType
			},
			type : "POST",
			dataType : "json",
			async : true,
			beforeSend: function(){
				//提交处理的函数
				loading("取消单向关注中...");
			},
			error : function(json){
				alert("取消单向关注出错了~");
				unloading();
			},
			//返回的是一个对象
			success : function(json){
				alert(json.weiboMsg);
				//重新加载信息
				switch (_attentionType) {
				case "onewayAttention":
					//单向关注
					onewayAttention(1);
					break;
				case "myAttention":
					//我的关注
					myAttention(1);
					break;
				case "mutualPowderFans":
					//互粉粉丝
					mutualPowderFans(1);
					break;
				}

				if(json.result === "error_weibo") {
					alert(json.errorWeiboMsg);
				}
				else if(json.result === "error") {
					alert("请求操作, 系统出现异常!");
				}
				unloading();
			}
		});
	}

	/**
	 * 刷新菜单
	 * @param _num	: 选中的编号
	 */
	function refreshMain(_num) {
		for(var i=0; i < $(".bar").size(); i++) {
			if(_num != i) {
				$("#menu_weibo_" + i).attr("class", "");
				$("#fansAttentionBar_" + i).hide();
			}
			else if(_num === i) {
				$("#menu_weibo_" + i).attr("class", "hover");
				$("#fansAttentionBar_" + i).show();
			}

		}
	}

	/**
	 * 全选
	 * @param _thisName :	点击的名称
	 * @param _name		:	class的名称[目前没用到]
	 */
	function selectAll(_thisName, _name) {
		var weiboChk = $(".weiboChk");
		var _bool = $("#" + _thisName).attr("checked");
		if(_bool === undefined) {
			_bool = false;
		}
		$.each(weiboChk, function(i, obj) {
			$(obj).attr("checked", _bool);
		});
	}
});

//获取单向关注
var onewayAttentionPage = new Page("onewayAttentionPage", onewayAttention, "bodyInfo", "bodyInfoPage");
onewayAttentionPage.size = 50;
//处理Page标签的函数
function onewayAttention(_page) {
	if(_page != undefined) {
		onewayAttentionPage.page = _page;
	}
	jQuery.ajax({
		url : webroot + "/attention/json/onewayAttention.shtml",
		data : {
		"page" : onewayAttentionPage.page,
		"size" : onewayAttentionPage.size
	},
	type : "POST",
	dataType : "json",
	async : true,
	beforeSend: function(){
		//提交处理的函数
		onewayAttentionPage.pageBeforeSend("<li>加载单向关注中...</li>");
		loading("加载单向关注中...");
	},
	error : function(json){
		onewayAttentionPage.pageError("<li>加载单向关注出错了~</li>");
		unloading();
	},
	//返回的是一个对象
	success : function(json){
		if(json.result === "success") {
			//处理数据列表的行信息
			function getResult(obj) {
				var result = '<li><label><div class="floatleft"><input type="checkbox" class="weiboChk" value="' + obj.fansattentionusername + '"/><img width="50" height="50" src="' + obj.img + '"/></div><div class="floatright"><p title="' + obj.nickname + '"><a href="http://weibo.com/u/' + obj.fansattentionusername + '" target="_banlk">' + obj.nickname + '</a></p><p>' + obj.gender + '</p></div></label></li>';
				return result;
			}
			onewayAttentionPage.pageOperate(json.data, { resultFn : getResult, dataNull : "<li>没有查找到单向关注数据!</li>", pageFootStyle : onewayAttentionPage.pageStyle.defaultStyle });
		}
		else if(json.result === "error_weibo") {
			alert(json.weiboMsg);
		}
		else if(json.result === "error") {
			alert("请求操作, 系统出现异常!");
		}
		unloading();
	}
	});
}

//获取单向粉丝
var onewayFansPage = new Page("onewayFansPage", onewayFans, "bodyInfo", "bodyInfoPage");
onewayFansPage.size = 50;
//处理Page标签的函数
function onewayFans(_page) {
	if(_page != undefined) {
		onewayFansPage.page = _page;
	}
	jQuery.ajax({
		url : webroot + "/fans/json/onewayFans.shtml",
		data : {
		"page" : onewayFansPage.page,
		"size" : onewayFansPage.size
	},
	type : "POST",
	dataType : "json",
	async : true,
	beforeSend: function(){
		//提交处理的函数
		onewayFansPage.pageBeforeSend("<li>加载单向粉丝中...</li>");
		loading("加载单向粉丝中...");
	},
	error : function(json){
		onewayFansPage.pageError("<li>加载单向粉丝出错了~</li>");
		unloading();
	},
	//返回的是一个对象
	success : function(json){
		if(json.result === "success") {
			//处理数据列表的行信息
			function getResult(obj) {
				var result = '<li><label><div class="floatleft"><input type="checkbox" class="weiboChk" value="' + obj.fansattentionusername + '"/><img width="50" height="50" src="' + obj.img + '"/></div><div class="floatright"><p title="' + obj.nickname + '"><a href="http://weibo.com/u/' + obj.fansattentionusername + '" target="_banlk">' + obj.nickname + '</a></p><p>' + obj.gender + '</p></div></label></li>';
				return result;
			}
			onewayFansPage.pageOperate(json.data, { resultFn : getResult, dataNull : "<li>没有查找到单向粉丝数据!</li>", pageFootStyle : onewayFansPage.pageStyle.defaultStyle });
		}
		else if(json.result === "error_weibo") {
			alert(json.weiboMsg);
		}
		else if(json.result === "error") {
			alert("请求操作, 系统出现异常!");
		}
		unloading();
	}
	});
}

//获取互粉粉丝
var mutualPowderFansPage = new Page("mutualPowderFansPage", mutualPowderFans, "bodyInfo", "bodyInfoPage");
mutualPowderFansPage.size = 50;
//处理Page标签的函数
function mutualPowderFans(_page) {
	if(_page != undefined) {
		mutualPowderFansPage.page = _page;
	}
	jQuery.ajax({
		url : webroot + "/fans/json/mutualPowderFans.shtml",
		data : {
		"page" : mutualPowderFansPage.page,
		"size" : mutualPowderFansPage.size
	},
	type : "POST",
	dataType : "json",
	async : true,
	beforeSend: function(){
		//提交处理的函数
		mutualPowderFansPage.pageBeforeSend("<li>加载互粉粉丝中...</li>");
		loading("加载互粉粉丝中...");
	},
	error : function(json){
		mutualPowderFansPage.pageError("<li>加载互粉粉丝出错了~</li>");
		unloading();
	},
	//返回的是一个对象
	success : function(json){
		if(json.result === "success") {
			//处理数据列表的行信息
			function getResult(obj) {
				var result = '<li><label><div class="floatleft"><input type="checkbox" class="weiboChk" value="' + obj.fansattentionusername + '"/><img width="50" height="50" src="' + obj.img + '"/></div><div class="floatright"><p title="' + obj.nickname + '"><a href="http://weibo.com/u/' + obj.fansattentionusername + '" target="_banlk">' + obj.nickname + '</a></p><p>' + obj.gender + '</p></div></label></li>';
				return result;
			}
			mutualPowderFansPage.pageOperate(json.data, { resultFn : getResult, dataNull : "<li>没有查找到互粉粉丝数据!</li>", pageFootStyle : mutualPowderFansPage.pageStyle.defaultStyle });
		}
		else if(json.result === "error_weibo") {
			alert(json.weiboMsg);
		}
		else if(json.result === "error") {
			alert("请求操作, 系统出现异常!");
		}
		unloading();
	}
	});
}

//获取我的关注
var myAttentionPage = new Page("myAttentionPage", myAttention, "bodyInfo", "bodyInfoPage");
myAttentionPage.size = 50;
//处理Page标签的函数
function myAttention(_page) {
	if(_page != undefined) {
		myAttentionPage.page = _page;
	}
	jQuery.ajax({
		url : webroot + "/attention/json/myAttention.shtml",
		data : {
		"page" : myAttentionPage.page,
		"size" : myAttentionPage.size
	},
	type : "POST",
	dataType : "json",
	async : true,
	beforeSend: function(){
		//提交处理的函数
		myAttentionPage.pageBeforeSend("<li>加载我的关注中...</li>");
		loading("加载我的关注中...");
	},
	error : function(json){
		myAttentionPage.pageError("<li>加载我的关注出错了~</li>");
		unloading();
	},
	//返回的是一个对象
	success : function(json){
		if(json.result === "success") {
			//处理数据列表的行信息
			function getResult(obj) {
				var result = '<li><label><div class="floatleft"><input type="checkbox" class="weiboChk" value="' + obj.fansattentionusername + '"/><img width="50" height="50" src="' + obj.img + '"/></div><div class="floatright"><p title="' + obj.nickname + '"><a href="http://weibo.com/u/' + obj.fansattentionusername + '" target="_banlk">' + obj.nickname + '</a></p><p>' + obj.gender + '</p></div></label></li>';
				return result;
			}
			myAttentionPage.pageOperate(json.data, { resultFn : getResult, dataNull : "<li>没有查找到我的关注数据!</li>", pageFootStyle : myAttentionPage.pageStyle.defaultStyle });
		}
		else if(json.result === "error_weibo") {
			alert(json.weiboMsg);
		}
		else if(json.result === "error") {
			alert("请求操作, 系统出现异常!");
		}
		unloading();
	}
	});
}

//获取我的粉丝
var myFansPage = new Page("myFansPage", myFans, "bodyInfo", "bodyInfoPage");
myFansPage.size = 50;
//处理Page标签的函数
function myFans(_page) {
	if(_page != undefined) {
		myFansPage.page = _page;
	}
	jQuery.ajax({
		url : webroot + "/fans/json/myFans.shtml",
		data : {
		"page" : myFansPage.page,
		"size" : myFansPage.size
	},
	type : "POST",
	dataType : "json",
	async : true,
	beforeSend: function(){
		//提交处理的函数
		myFansPage.pageBeforeSend("<li>加载我的粉丝中...</li>");
		loading("加载我的粉丝中...");
	},
	error : function(json){
		myFansPage.pageError("<li>加载我的粉丝出错了~</li>");
		unloading();
	},
	//返回的是一个对象
	success : function(json){
		if(json.result === "success") {
			//处理数据列表的行信息
			function getResult(obj) {
				var result = '<li><label><div class="floatleft"><input type="checkbox" class="weiboChk" value="' + obj.fansattentionusername + '"/><img width="50" height="50" src="' + obj.img + '"/></div><div class="floatright"><p title="' + obj.nickname + '"><a href="http://weibo.com/u/' + obj.fansattentionusername + '" target="_banlk">' + obj.nickname + '</a></p><p>' + obj.gender + '</p></div></label></li>';
				return result;
			}
			myFansPage.pageOperate(json.data, { resultFn : getResult, dataNull : "<li>没有查找到我的粉丝数据!</li>", pageFootStyle : myFansPage.pageStyle.defaultStyle });
		}
		else if(json.result === "error_weibo") {
			alert(json.weiboMsg);
		}
		else if(json.result === "error") {
			alert("请求操作, 系统出现异常!");
		}
		unloading();
	}
	});
}